* { 
    @include box-sizing(border-box);
}

html {
    height: 100%;
}

body {
    font-family: $fontFamily;
    font-size: $fontSize;
    color: $textColor;
    -webkit-font-smoothing: antialiased;
    padding: 0;
    margin: 0;
    height: 100%;
    background-color: $bodyBgColor;
    
    a {
        text-decoration: none;
    }
}

.layout-mask {
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: #424242;
    opacity: 0.7;
    top: 0;
    left: 0;
    z-index: 999999997;
}

.layout-wrapper {
    
    .topbar {
        position: fixed;
        z-index: 100;
        width: 100%;
        height: 60px;
        @include shadow(0 2px 5px 0 rgba(0,0,0,0.26));
                
        .topbar-left {
            padding: 15px;
            height: 60px;
            width: 235px;
            float: left;
            @include background-gradient-left2right($topbarLeftGradientStartBgColor, $topbarLeftGradientEndBgColor);
            @include shadow(0 0 10px 0 rgba(0, 0, 0, 0.25));

            .topbar-logo {
                height: 30px;
            }
        }
        
        .topbar-right {
            padding: 15px;
            height: 60px;
            @include background-gradient-left2right($topbarRightGradientStartBgColor, $topbarRightGradientEndBgColor);
            
            #menu-button {
                color: $menuButtonColor;
                display: inline-block;
                vertical-align: middle;
                width: 32px;
                height: 32px;
                position: absolute;
                left: 219px;
                text-align: center;
                background-color: $menuButtonBgColor;
                cursor: pointer;
                @include border-radius($borderRadius);
                
                
                &:hover {
                    background-color: $menuHoverBgColor;
                }
                
                i {
                    @include transition(all .3s);
                    @include transition(all .3s);
                    font-size: 32px;
                }
                                
                &.menu-button-rotate {
                    i {
                        @include rotate(180deg);

                    };
                }
            }
            
            #topbar-menu-button {
                display: none;
                color: $topbarTextColor;
                vertical-align: middle;
                height: 36px;
                position: absolute;
                top: 12px;
                right: 25px;
                cursor: pointer;

                @include transition(all .3s);
                
                i {
                    @include transition(color .5s);
                    font-size: 36px;
                }
            }
            
            .topbar-items {
                .search-item {   
                    .topbar-search {
                        position: relative;
                        top: -2px;
                        
                        input {
                            position: relative;
                            font-size: $fontSize;
                            background-color: $white;
                            padding: 5px 12px;
                            border: 1px solid $lightGray;
                            @include border-radius($borderRadius);
                            @include transition(box-shadow $transitionDuration, border-color $transitionDuration);
                            width: 200px;
                            
                            &:focus {
                                outline: 0 none;
                                border: 1px solid $menuitemActiveColor;
                                @include multi-shadow(inset 0 1px 1px rgba(0,0,0,.075), 0 0 3px 0 $menuitemActiveColor);
                            }
                        }
                        
                        i {
                            position: absolute;
                            color: $textSecondaryColor;
                            top: 5px;
                            right: 10px;
                            font-size: 18px;
                        }
                    }                 
                    
                }
            }
        }
    }
    
    .layout-menu-container {
        overflow: auto;
        position: fixed;
        width: 235px;
        z-index: 99;
        top: 60px;
        height: 100%;
        @include background-gradient-left2right($menuGradientStartBgColor, $menuGradientEndBgColor);
        border-right: 1px solid #cccccc;
        @include transition(margin-left .3s);

        .ui-scrollpanel {
            background: transparent;
            border-radius: 0;
            border: none;
            .ui-scrollpanel-bar {
                background: #aaaaaa;
                @include opacity(.3);
            }
            .ui-scrollpanel-hidden {
                display: block;
                visibility: hidden;
            }
            .menu-scroll-content {
                width: 253px;
                padding-right: 18px;
            }

            .layout-main-menu {
                margin-top: 16px;
                padding-bottom: 120px;
            }
        }
                
        .profile {
            padding: 15px;
            @include shadow(0 2px 5px 0 rgba(0,0,0,0.15));
            @include clearfix();

            > a {
                cursor: pointer;

                .profile-image {
                    width: 45px;
                    height: 45px;
                    float: right;
                    margin-left: 4px;
                }
                         
                .profile-name {
                    display: block;
                    color: $textColor;
                    vertical-align: middle;
                    font-size: 16px;
                    font-weight: bold;
                    text-align: right;
                    margin-top: 4px;
                }
                
                .profile-role {
                    display: block;
                    min-width: 100px;
                    text-align: right;
                    font-size: 12px;
                    float: right;
                    color: $textSecondaryColor;
                }
                
                i {
                    float: right;
                    color: $textSecondaryColor;
                    vertical-align: middle;
                    @include transition(transform .3s);
                }
                
            }

            &.profile-expanded {
                i {
                    @include rotate(-180deg);
                }

                + .profile-menu {
                    max-height: 1000px;
                }
            }
        }

        .profile-menu {
            max-height: 0;
            border-bottom: 1px solid #d6d5d5;
            overflow: hidden;
            -moz-transition-duration: 0.4s;
            -webkit-transition-duration: 0.4s;
            -o-transition-duration: 0.4s;
            transition-duration: 0.4s;
            -moz-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
            -webkit-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
            -o-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
            transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);

            li:first-child {
                margin-top: 16px;
            }

            li:last-child {
                margin-bottom: 16px;
            }

            a {
                cursor: pointer;
            }
        }
                        
        &.layout-menu-dark {
            @include background-gradient-left2right($darkMenuGradientStartBgColor, $darkMenuGradientEndBgColor);
            
            .profile {
                .profile-name, .profile-role {
                    color: $darkMenuMenuitemColor;
                }
                
                i {
                    color: $darkMenuMenuitemColor;
                }    
            }

            .profile-menu {
                border-bottom: 1px solid $darkMenuHoverBgColor;
            }


            ul.layout-menu {                
                li {
                    a {
                        color: $darkMenuMenuitemColor;
                        
                        i {
                            color: $darkMenuMenuitemColor;
                        }
                        
                        &:hover {
                            background-color: $darkMenuHoverBgColor;
                        }

                        &.active-menuitem-routerlink {
                            color: darken($darkMenuMenuitemActiveColor, 10%);

                            i:first-child {
                                color:  darken($darkMenuMenuitemActiveColor, 10%);
                            }
                        }
                    }
                    
                    &.active-menuitem {
                        > a {
                            border-left-color: $darkMenuMenuitemActiveColor;
                            color: $darkMenuMenuitemActiveColor;
                            background-color: $darkMenuMenuitemActiveBgColor;
                            
                            i {
                                color: $darkMenuMenuitemActiveColor;
                            }
                        }
                    }
                }
            }                    
        }
    }
        
    &.menu-layout-overlay {
        .layout-menu-container {
            margin-left: -250px;
        }
        
        .layout-main, .layout-footer {
            margin-left: 0;
        }
        
        &.layout-menu-overlay-active {
            .layout-menu-container {
                z-index: 999999999;
                margin-left: 0px;
            }

            .layout-mask {
                display: block;
            }
            
            .topbar {
                .topbar-right {
                    #menu-button {
                        i {
                            @include rotate(0deg);
                        }
                    }
                }
            }
        }  
        
        .topbar {
            z-index: 999999998;

            .topbar-right {
                #menu-button {                    
                    i {
                        @include rotate(180deg);
                    }
                }
            }
        }      
    }

    .layout-main {
        padding: 80px 15px 15px 15px;
        @include transition(margin-left .3s);
    }

    .layout-mask {
        display: none;
    }
    
    .layout-footer {
        @include transition(margin-left .3s);
    }
    
    .layout-menu {
        margin: 0;
        padding: 0;
        list-style: none;
                
        li {
            a {
                cursor: pointer;
                display: block;
                padding: 10px 15px;
                color: $textColor;
                width: 100%;
                @include transition(background-color .3s, border-left-color .3s);
                overflow: hidden;
                border-left: 4px solid transparent;
                
                i {
                    color: $textSecondaryColor;
                }
                
                i:first-child {
                    display: inline-block;
                    vertical-align: middle;
                    margin-right: 10px;
                    font-size: 16px;
                }
                
                i.menuitem-toggle-icon {
                    float: right;
                    font-size: 16px;
                    margin-top: 2px;
                    margin-right: -3px;
                    @include transition(transform .3s);
                }

                .submenu-arrow {
                    display: none;
                }

                &:hover {
                    background-color: $menuHoverBgColor;
                }
                
                span {
                    display: inline-block;
                    vertical-align: middle;
                }
                
                .menuitem-badge {
                    float: right;
                    width: 16px;
                    height: 16px;
                    margin-right: 2px;
                    text-align: center;
                    background-color: $badgeBgColor;
                    color: $badgeColor;
                    font-size: $fontSize - 2;
                    font-weight: 700;
                    line-height: 16px;
                    @include border-radius(50%);
                    margin-top: 2px;
                }

                &.active-menuitem-routerlink {
                    color: $menuitemActiveColor;

                    i:first-child {
                        color: $menuitemActiveColor;
                    }
                }
            }
                
            &.active-menuitem {
                > a {
                    color: $menuitemActiveColor;
                    background-color: $menuitemActiveBgColor;
                    border-left-color: $menuitemActiveColor;
                    
                    i:first-child {
                        color: $menuitemActiveColor;
                    }
                    
                    i.menuitem-toggle-icon {
                        @include rotate(-180deg);
                    }
                }

                > ul {
                    max-height: 1000px;
                }
            }
            
            ul {
                max-height: 0;
                padding: 0;
                margin: 0;
                list-style: none;
                overflow: hidden;
                -moz-transition-duration: 0.4s;
                -webkit-transition-duration: 0.4s;
                -o-transition-duration: 0.4s;
                transition-duration: 0.4s;
                -moz-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
                -webkit-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
                -o-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
                transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);


                li {
                    a {
                        padding: 10px 15px 10px 30px;
                        
                        i:first-child {
                            display: inline-block;
                            vertical-align: middle;
                            margin-right: 10px;
                        }
                    }
                    
                    ul {
                        li {
                            a {
                                padding-left: 45px;
                            }
                        }
                        
                        ul {
                            li {
                                a {
                                    padding-left: 60px;
                                }
                            }
                            
                            ul {
                                li {
                                    a {
                                        padding-left: 75px;
                                    }
                                }
                                
                                ul {
                                    li {
                                        a {
                                            padding-left: 90px;
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        
        .layout-menu-tooltip {
            display:none;
            padding: 0 5px;
            position: absolute;
            left: 76px;
            top: 5px;
            z-index: 101;
            line-height: 1;
            
            .layout-menu-tooltip-text {
               padding: 6px 8px;
               font-weight: 700;
               background-color: lighten($darkMenuGradientStartBgColor, 10%);
               color: #ffffff;
               min-width: 75px;
               white-space: nowrap;
               text-align: center;
               @include border-radius($borderRadius);
               @include overlay-shadow();
            }
            
            .layout-menu-tooltip-arrow {
                position: absolute;
                width: 0;
                height: 0;
                border-color: transparent;
                border-style: solid;
                top: 50%;
                left: 0;
                margin-top: -5px;
                border-width: 5px 5px 5px 0;
                border-right-color: lighten($darkMenuGradientStartBgColor, 10%);
            }
        }
    }
    
    .layout-footer {
        padding: 15px 20px;
        @include shadow(0 0 10px 0 rgba(0, 0, 0, 0.25));
        
        .footer-text-left {
            img {
                height: 25px;
            }
        }
        
        .footer-text-right {
            color: $textSecondaryColor;
            float: right;
            
            a {
                cursor: pointer;
                margin-left: 15px;
                color: $darkGray;
                font-size: 24px;
            }
        }
    }
}

.ajax-loader {
    font-size: 32px;
    color: $menuitemActiveColor;
}

@media (min-width: 1025px) {
    
    .layout-wrapper {
        
        .topbar-items {
            -webkit-animation-name: none;
            animation-name: none;
            float: right;
            margin: 5px 0 0 0;
            padding: 0;
            list-style-type: none;
            
            > li {
                float: right;
                position: relative;
                margin-left: 14px;
                
                > a {
                    cursor: pointer;
                    position: relative;
                    display: block;
                    
                    .topbar-item-name {
                        display: none;
                    }
                    
                    .topbar-badge {
                        position: absolute;
                        right: 0;
                        top: -5px;
                        background-color: $badgeBgColor;
                        color: $badgeColor;
                        @include border-radius(50%);
                        padding: 2px 4px;
                        display: block;
                        font-size: 12px;
                        line-height: 12px;
                    }
                }

                .topbar-icon {
                    font-size: 24px;
                    color: $topbarTextColor;
                    @include transition(color .3s);
                    
                    &:hover {
                        color: $lightGray;
                    }
                }
                
                &.profile-item {
                    a {
                        @include transition(color .3s);
                        @include clearfix();
                        top: -3px;
                        
                        .profile-image {
                            width: 36px;
                            height: 36px;
                            margin-top: -4px;
                            float: right;
                            margin-left: 12px;
                        }
                        
                        .topbar-item-name {
                            display: block;
                            float: left;
                            color: $topbarTextColor;
                        }
                        
                        .topbar-item-role {
                            display: block;
                            font-size: 12px;
                            color: $topbarTextColor;
                        }
                    }
                }
                
                > ul {
                    position: absolute;
                    top: 50px;
                    right: 5px;
                    display: none;
                    width: 250px;
                    background-color: #ffffff;
                    border-top: 4px solid $menuitemActiveColor;
                    @include multi-shadow(0 6px 20px 0 rgba(0, 0, 0, 0.19), 0 8px 17px 0 rgba(0, 0, 0, 0.2));
                    -webkit-animation-duration: .5s;
                    -moz-animation-duration: .5s;
                    animation-duration: .5s;
                    
                    &:before {
                        width: 0;
                        height: 0;
                        border-left: 8px solid transparent;
                        border-right: 8px solid transparent;
                        border-bottom: 15px solid $menuitemActiveColor;
                        content: " ";
                        position: absolute;
                        top: -15px;
                        left: 232px;
                   }
                }
                
                &.active-top-menu {
                    > ul {
                        display: block;
                    }
                }
                
                .topbar-message {
                    img {
                        display: inline-block;
                        vertical-align: middle;
                        margin-right: 12px;
                    }
                }
            }
        }
        
        &.menu-layout-static {
            .layout-menu-container {
                margin-left: 0;
            }
            
            .layout-main, .layout-footer {
                margin-left: 235px;
            }
            
            &.layout-menu-static-inactive {
                .layout-menu-container {
                    margin-left: -250px;
                }
                
                .layout-main, .layout-footer {
                    margin-left: 0px;
                }

                .topbar {
                    .topbar-right {
                        #menu-button {
                            i {
                                @include rotate(180deg);
                            }
                        }
                    }
                }
            }
            
            .layout-mask {
                display: none;
            }
        }
        
        &.menu-layout-horizontal {
            .topbar {
                @include no-shadow();
                
                .topbar-left {
                    background: $topbarLeftGradientStartBgColor;
                    @include no-shadow();
                }
                
                .topbar-right {
                    background: $topbarLeftGradientStartBgColor;
                    
                    #menu-button {
                        display: none;
                    }
                }
            }
            
            .layout-menu-container {            
                overflow: visible;
                position: fixed;
                width: 100%;
                top: 60px;
                height: auto;
                background-color: $topbarLeftGradientEndBgColor;

                .ui-scrollpanel {
                    overflow: visible;
                    border: none;
                    .ui-scrollpanel-wrapper {
                        overflow: visible;
                        .ui-scrollpanel-content {
                            overflow: visible;
                        }
                    }

                    .ui-scrollpanel-bar {
                        display: none;
                    }

                    .menu-scroll-content {
                        width: 100%;
                    }

                    .layout-main-menu {
                        padding-bottom: 0;
                    }
                }

                ul.layout-menu {
                    &:last-child {
                        margin-top: 0;
                    }
                    
                    > li {
                        float: left;
                        position: relative;
                        
                        > a {                        
                            &:hover {
                                background-color: $menuitemHoverBgColor;
                                color: $textColor;
                                
                                i {
                                    color: $textColor;
                                }
                            }
                        }
                        
                        > ul {
                            padding: 5px 0;
                            z-index: 100;
                            position: absolute;
                            top: 50px;
                            left: 0px;
                            width: 250px;
                            background-color: #ffffff;
                            border: 1px solid #cccccc;
                            border-top: 4px solid $menuitemActiveColor;
                            max-height: none;
                            display: none;
                            
                            li {
                                a {
                                    padding: 10px 16px;
                                }
                                
                                ul {
                                    position: static;
                                    
                                    li {
                                        a {
                                            padding-left: 32px;
                                        }
                                    }
                                    
                                    ul {
                                        li {
                                            a {
                                                padding-left: 48px;
                                            }
                                        }
                                        
                                        ul {
                                            li {
                                                a {
                                                    padding-left: 64px;
                                                }
                                            }
                                            
                                            ul {
                                                li {
                                                    a {
                                                        padding-left: 80px;
                                                    }
                                                }
                                                
                                                ul {
                                                    li {
                                                        a {
                                                            padding-left: 96px;
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                                
                                &.active-menuitem {
                                    > a {
                                        color: $menuitemActiveColor;
                                        background-color: $menuitemHoverBgColor;
                                    }
                                }
                            }
                        }
                        
                        &.active-menuitem {
                            > .arrow {
                                width: 0;
                                height: 0;
                                border-left: 8px solid transparent;
                                border-right: 8px solid transparent;
                                border-bottom: 15px solid $menuitemActiveColor;
                                content: " ";
                                position: absolute;
                                top: 38px;
                                left: 20px;
                            }

                            > a {
                                color: $menuitemActiveColor;
                                background-color: $menuitemActiveBgColor;
                                border-left-color: transparent;
                                
                                i {
                                    color: $menuitemActiveColor;
                                }
                            }

                            > ul {
                                display: block;
                            }
                        }
                    }
                    
                    li {
                        a {
                            .menuitem-badge {
                                margin-right: 0;
                                margin-left: 4px;
                            }

                            .menuitem-toggle-icon {
                                margin-top: 0;
                            }
                        }
                    }
                }
                
                &.layout-menu-dark {
                    @include background-gradient-left2right($darkMenuGradientStartBgColor, $darkMenuGradientEndBgColor);
                                        
                    ul.layout-menu {
                        >li {
                            >ul {
                                border-left:none;
                                border-right:none;
                                border-bottom:none;
                            }
                        }
                        li {
                            a {
                                color: $darkMenuMenuitemColor;
                                
                                i {
                                    color: $darkMenuMenuitemColor;
                                }
                                
                                &:hover {
                                    background-color: $darkMenuHoverBgColor;
                                }
                            }
                            
                            &.active-menuitem {
                                > a {
                                    color: $darkMenuMenuitemActiveColor;
                                    background-color: $darkMenuMenuitemActiveBgColor;
                                    
                                    i {
                                        color: $darkMenuMenuitemActiveColor;
                                    }
                                }
                            }
                            
                            ul {
                                @include background-gradient-left2right($darkMenuGradientStartBgColor, $darkMenuGradientEndBgColor);
                            }
                        }
                    }                    
                }
            }
            
            .layout-main {
                padding-top: 115px;
                margin-left: 0px;
            }
            
            .layout-footer {
                margin-left: 0px;
            }
            
            .layout-mask {
                display: none;
            }
        }
        
        &.menu-layout-slim {
            .topbar {
                left: 75px;
                width: calc(100% - 75px);
                
                .topbar-left {
                    background: transparent;
                    @include shadow(none);
                }
                
                .topbar-right {
                    #menu-button { 
                        display: none;
                    }
                }
            }

            .layout-menu-container {
                width: 75px;
                overflow: visible;
                z-index: 100;
                top: 0;

                .ui-scrollpanel {
                    border: none;
                    border-radius: 0;
                    .ui-scrollpanel-wrapper {
                        overflow: visible;
                        .ui-scrollpanel-content {
                            overflow: visible;
                        }
                    }

                    .ui-scrollpanel-bar {
                        display: none;
                    }

                    .menu-scroll-content {
                        width: 100%;
                    }
                }
                
                .profile {
                    height: 60px;
                    padding-top: 7px;

                    > a {
                        .profile-name, .profile-role, i {
                            display: none;
                        }
                    }
                }
                
                .layout-menu {
                    padding: 0;
                    
                    > li {
                        position: relative;
                        
                        > a {
                            text-align: center;
                            padding-left: 0;
                            padding-right: 0;
                            padding-top: 8px;
                            padding-bottom: 8px;
                            
                            i:first-child {
                                font-size: 19px;
                            }
                            
                            span, i.menuitem-toggle-icon {
                                display: none;
                            }
                            
                            &:hover + .layout-menu-tooltip {
                                display: block;
                            }
                        }
                        
                        > ul {
                            @include overlay-shadow();
                            border: 1px solid #cccccc;
                            background-color: #ffffff;
                            position: absolute;
                            top: 0;
                            left: 73px;
                            min-width: 200px;
                            max-height: none;
                            display: none;
                            
                            li {
                                a {
                                    padding-left: 16px;
                                }
                                
                                ul {
                                    li {
                                        a {
                                            padding-left: 32px;
                                        }
                                    }
                                    
                                    ul {
                                        li {
                                            a {
                                                padding-left: 48px;
                                            }
                                        }
                                        
                                        ul {
                                            li {
                                                a {
                                                    padding-left: 64px;
                                                }
                                            }
                                            
                                            ul {
                                                li {
                                                    a {
                                                        padding: 80px;
                                                    }
                                                }
                                                
                                                ul {
                                                    li {
                                                        a {
                                                            padding: 96px;
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                        
                        &.active-menuitem {
                            > a {
                                &:hover + .layout-menu-tooltip {
                                    display: none;
                                }
                            }

                            > ul {
                                display: block;
                            }
                        }
                    }
                }
                
                &.layout-menu-dark {
                    border:none;
                    .layout-menu {
                        > li {
                            > ul {
                                border:none;
                                @include background-gradient-left2right($darkMenuGradientStartBgColor, $darkMenuGradientEndBgColor);
                            }
                        }
                    }
                }
            }
            
            .layout-main {
                margin-left: 75px;
            }
            
            .layout-footer {
                margin-left: 75px;
            }
        }
    }
}

@media (max-width: 1024px) {
    .layout-wrapper {
        
        &.menu-layout-static {
            .topbar {
                .topbar-right {
                    #menu-button {
                        i {
                            @include rotate(180deg);
                        }
                    }
                }
            }
            .layout-menu-container {
                margin-left: -265px;
            }
            
            .layout-main, .layout-footer  {
                margin-left: 0px;
            }

            &.layout-menu-static-active {
                .layout-menu-container {
                    margin-left: 0;
                    z-index: 999999999;
                }
                
                .topbar {
                    z-index: 999999998;
                    
                    .topbar-right {
                        #menu-button {
                            i {
                                @include rotate(0deg);
                            }
                        }
                    }
                }
                
                .layout-main, .layout-footer {
                    margin-left: 0;
                }

                .layout-mask {
                    display: block;
                }
            }
            
            &.layout-menu-static-inactive {
                .topbar {
                    .topbar-right {
                        #menu-button {
                            &.menu-button-rotate {
                                i {
                                    @include rotate(180deg);
                                }
                            }
                        }
                    }
                }
            }
        }

        .topbar {
            .topbar-right {
                #topbar-menu-button {
                    display: block;
                }
                
                .topbar-items {
                    position: absolute;
                    top: 75px;
                    right: 15px;
                    width: 275px;
                    -webkit-animation-duration: .5s;
                    -moz-animation-duration: .5s;
                    animation-duration: .5s;
                    display: none;
                    background-color: #ffffff;
                    border-top: 4px solid $menuitemActiveColor;
                    @include multi-shadow(0 6px 20px 0 rgba(0, 0, 0, 0.19), 0 8px 17px 0 rgba(0, 0, 0, 0.2));
                    list-style-type: none;
                    margin: 0;
                    padding: 0;
                    
                    &:before {
                        width: 0;
                        height: 0;
                        border-left: 8px solid transparent;
                        border-right: 8px solid transparent;
                        border-bottom: 15px solid $menuitemActiveColor;
                        content: " ";
                        position: absolute;
                        top: -15px;
                        left: 242px;
                   }
                    
                    > li {
                        > a {
                            width: 100%;
                            display: block;
                            font-size: 16px;
                            padding: 10px 15px;
                            color: $textColor;
                            position: relative;
                            
                            i {
                                display: inline-block;
                                vertical-align: middle;
                                margin-right: 12px;
                                font-size: 16px;
                            }
                            
                            &:hover {
                                background-color: $menuitemHoverBgColor;
                            }
                            
                            .topbar-item-name {
                                display: inline-block;
                                vertical-align: middle;
                            }
                                            
                            .topbar-badge {
                                position: absolute;
                                left: 30px;
                                top: 10px;
                                background-color: $badgeBgColor;
                                color: $badgeColor;
                                @include border-radius(50%);
                                padding: 2px 4px;
                                display: block;
                                font-size: 12px;
                                line-height: 12px;
                            }
                        }
                        
                        > ul {
                            display: none;
                            
                            li {
                                a {
                                    span, img, i {
                                        display: inline-block;
                                        vertical-align: middle;
                                    }
                                }
                            }
                        }
                        
                        &.active-top-menu {
                            > a {
                                color: $menuitemActiveColor;
                            }
                            
                            > ul {
                                display: block;
                                
                                li {
                                    a {
                                        padding-left: 32px;
                                    }
                                }
                            }
                        }
                        
                        &.search-item {
                            width: 100%;
                            display: block;
                            font-size: 16px;
                            position: relative;
                            padding: 10px 15px;
                            
                            .topbar-search {
                                input {
                                    top: 0;
                                    width: 100%;
                                    padding-right:28px;
                                    border-color: $dividerColor;
                                    color: $textColor;
                                    
                                    &:focus {
                                        border-color: $dividerColor;
                                    }
                                }
                                                            
                                label {
                                    top: 1px;
                                    color: $textColor;
                                }
                                
                                i {
                                    position: absolute;;
                                    right: 10px;
                                    top: 5px;
                                }
                            }
                            
                            
                        }
                        
                        &.profile-item {
                            .profile-image {
                                display: inline-block;
                                vertical-align: middle;
                                width: 24px;
                                height: 24px;
                                background-size: 24px 24px;
                                margin-right: 14px;
                            }
                            
                            span {
                                vertical-align: middle;
                                display: inline-block;
                            }
                        }
                    }
                    
                    &.topbar-items-visible {
                        display: block;
                    }
                }
            }
        }
    }
}

@media (max-width: 399px) {
    .layout-wrapper {
        .topbar {
            .topbar-right {
                #topbar-menu-button {
                    right: 10px;
                }
            }
        }
        
        &.layout-rtl {
            .topbar {
                .topbar-right {
                    #topbar-menu-button {
                        left: 10px;
                    }
                }
            }
        }
    }
}